<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
        // Promise.all()  Promise.resolve()  Promise.reject()
        var p1=Promise.resolve("我是参数呀");
        p1.then(function(data){
            console.log(data);
        });

        var p2=Promise.reject("我是参数呀222222222222");
        p2.catch(function(data){
            console.log(data);
        });


        // Promise.all() 方法用于将多个 Promise 实例，包装成一个新的Promise 实例。
        // 只有所有promise 对象的的状态都变成fulfilled ， p 的状态才会变成fulfilled
        //1. 包装的新的promise对象，在状态fulfilled时候，then函数会接收一个类型为数组的参数
        // 数组的每个元素按顺序存储，合并多个promise返回的的结果
        //2.包装的新的promise对象，在状态为rejected时候，then函数的第二个函数或者catch会接受第一个状态为rejected的promise返回的参数
        var pA=new Promise(function(resolve,reject){
            resolve("pA参数呀");
        });
        var pB=new Promise(function(resolve,reject){
            reject("pB参数呀");
        });
        var pC=new Promise(function(resolve,reject){
            reject("pC参数呀");
        });
        var pAll=Promise.all([pA,pB,pC]);
        
        pAll.then(function(data){
            console.log(data);
        }).catch(function(error){
            console.log(error);
        });

    </script>
</head>
<body>
    
</body>
</html>